有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在单击按钮时将文本设置为当前正在使用的EditText

我有3个EditText和3个按钮,我知道如何将文本设置为特定的EditText,但我想要的是将文本设置为当前正在使用的EditText。i、 e当我点击按钮1时,我当前所在的编辑文本应该设置为特定文本,是否可能??或者我应该为每个EditText设置单独的按钮,以便在单击每个按钮时,只更新特定的EditText


共 (2) 个答案

  1. # 1 楼答案

    要实现这一点,可以使用OnFocusChangeListener并将其应用于所有EditTexts。e、 g

    public class A {
    
        private EditText selectedEditText;
    
        private void setupEditTexts(){
            editText1.setOnFocusChangeListener(changeListener);
            ...
        }
    
        private OnFocusChangeListener changeListener= new OnFocusChangeListener(){
            public void onFocusChange(View v, boolean hasFocus) {
                if(hasFocus) selectedEditText = (EditText)v;
            }
        };
    
    }
    

    然后当你的Button被点击时,只需链接到所选的EditText

    注意:它不仅可以为空,而且如果焦点更改为另一个View,它将不会跟踪它,而是指向最后一个被聚焦的EditText

  2. # 2 楼答案

    您可以使用一个变量来存储当前的EditText,也可以在父视图上调用getCurrentFocus()来获取当前元素的焦点